博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ThinkPHP 学习笔记2-创建许愿墙2
阅读量:7100 次
发布时间:2019-06-28

本文共 1838 字,大约阅读时间需要 6 分钟。

hot3.png

接上一篇博文继续贴。

11、修改js文件,执行提交事件

$('#send-btn').click(function(){	//验证昵称和内容不能为空	var obj_username=$('#username');	var obj_content=$('#content');	var username=obj_username.val();	var content=obj_content.val();		if(username==''){			alert('用户名不能为空');			obj_username.focus();			return;		}		if(content==''){			alert('许愿内容不能为空');			obj_content.focus();			return;		}		$.post(handleUrl,{username:username, content:content},			function(data){				if(data.status){					var str='
'; str+='
'+data.username+''; str+='
No.'+data.id+''; str+='
'+data.content+'
'; str+='
'; str+='
'+data.time+ ''; str+='
'; $('#main').append(str); $('#close').click();         }else{                        alert('发布失败');         } }, 'json');});
12、上一步中用到的handleUrl在Index_index.html中定义。
之所以定义在这里,而不是直接定义在index.js里,是因为index.js里面不能解析php方法,而模板页面里面可以。
在分组部署的情况下,要把分组名称和action名称都加上来获取路径
第三个参数是用来配置后缀名的,默认是html
13、后台Action添加handle方法,处理前台提交来的数据
public function handle(){    	if(!IS_AJAX){    		halt('页面不存在');    	}    	$data = array(    		'username' => I('username'),     		'content' => I('content'),    		'time' => time()    		);    	if($id=M('wish')->data($data)->add()){    		$data['id']=$id;    		$data['content'] =replace_phiz($data['content']);    		$data['time']=date('y-m-d H:i', $data['time']);    		$data['status']=1;    		$this->ajaxReturn($data, 'json');    	} else{    		$this->ajaxReturn(array('status' => 0), 'json');    	}    }
14、halt也可以用_404,作用一样。还可以自定义错误页面。
       首先在config.php中指定错误页面路径:
//指定错误页面模板路径	'TMPL_EXCEPTION_FILE' => './Public/Tpl/error.html',
       然后在相应路径下创建错误信息页:
	

页面将在5秒后跳转 或者点击
返回首页
至此完成了一个ajax方式的数据提交,和接收数据后插入数据库并返回信息提示的操作。

转载于:https://my.oschina.net/u/173975/blog/151712

你可能感兴趣的文章